<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Checklist: Use Case</title>
<meta name="uma.type" content="Checklist">
<meta name="uma.name" content="use_case">
<meta name="uma.presentationName" content="Use Case">
<meta name="element_type" content="Checklist">
<meta name="filetype" content="description">
<meta name="role" content="">
<link rel="StyleSheet" href="./../../../css/default.css" type="text/css">
<script src="./../../../scripts/ContentPageResource.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSubSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageToolbar.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/contentPage.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript">
					var backPath = './../../../';
					var imgPath = './../../../images/';
					var nodeInfo=null;
					contentPage.preload(imgPath, backPath, nodeInfo,  '', true, false, false);
					
					//override the subsection text
					contentPage.subSection.expandAllText = 'Expand All Check Items';
					contentPage.subSection.collapseAllText = 'Collapse All Check Items';					
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top"><a name="Top"></a>
<div id="page-guid" value="_0kNwINk1Edq2Q8qZoWbvGA"></div>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td class="pageTitle" nowrap="true">Checklist: Use Case</td><td width="100%">
<div align="right" id="contentPageToolbar"></div>
</td><td width="100%" class="expandCollapseLink" align="right"><a name="mainIndex" href="./../../../index.htm"></a><script language="JavaScript" type="text/javascript" src="./../../../scripts/treebrowser.js"></script></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="pageTitleSeparator"><img src="./../../../images/shim.gif" alt="" title="" height="1"></td>
</tr>
</table>
<div class="overview">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50"><img src="./../../../images/checklist.gif" alt="" title=""></td><td>
<table class="overviewTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">This checklist provides questions to verify that use cases are described in a consistent and complete manner.</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Relationships</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Related Elements</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../../core.tech.common.extend_supp/workproducts/use_case_22BE66E2.html" guid="_0VGbUMlgEdmt3adZL5Dmdw">Use Case</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Check Items</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="sectionTableCell">
<div class="stepHeading">The use-case name is meaningful and un-ambiguous</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    Does the use case have a unique name?
</p>
<p>
    Is the name a verb + noun phrase (for example, Withdraw Cash)?
</p>
<p>
    Does the name accurately&nbsp;summarize the&nbsp;main goal&nbsp;of the use case?
</p>
<p>
    Is the name "actor independent"?
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">The brief description clearly describes the primary goal of the use case</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    Is it clear from the brief description what the main purpose of the use case is?
</p>
<p>
    Is the "observable result of value" obvious?
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">Associated actors and information exchanged are clearly defined</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    Is the use case associated with one or more actors?
</p>
<p>
    Is the primary, or initiating actor, defined?
</p>
<p>
    Is it clear who wishes to perform the use case?
</p>
<p>
    Is all information exchanged between the actor(s) and the system clearly specified?
</p>
<p>
    If a "time" actor is used, are you sure you did not miss an important actor and associated use cases (such as
    administrative or maintenance personnel that define schedule events)?
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">Pre-conditions have been specified</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    Does each pre-condition represent a tangible&nbsp;state&nbsp;of&nbsp;the system (for example, the Withdraw Cash use
    case for an automated teller machine has a precondition that the user has an account)?
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">The Basic Flow and Alternate Flows are complete, correct and consistent</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    Is it clear how the use case is started?
</p>
<p>
    Is the triggering event clearly described?
</p>
<p>
    Does the flow have a definite ending?
</p>
<p>
    Does&nbsp;each step in the scenario contain&nbsp;the same level of abstraction?&nbsp;&nbsp;
</p>
<p>
    Does each step in the scenario describe something that can actually happen and that the system can reasonably detect?
</p>
<p>
    Does each step make&nbsp;progress towards the goal?
</p>
<p>
    Are there any missing steps? Is it clear how to go from one step to the next? Does the sequence of communication
    between the actors and the use case conform to the user's expectations?
</p>
<p>
    Does each step describe how the step helps the actor achieve their goal?
</p>
<p>
    Is each step technology independent? Is it free of technical details, and design decisions?
</p>
<p>
    Are the steps correctly numbered?
</p>
<p>
    For each alternate flow is the condition(s) for initiation of the flow clearly defined?
</p>
<p>
    For each alternate flow is it clear how the use case ends or where in the basic flow that the use case resumes?
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">Post-conditions have been specified</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    If "Minimal Guarantees" are present, do they always happen when the use case completes, regardless of success? (A
    Minimal Guarantee represents&nbsp;a condition&nbsp;that will be true when the use case ends, regardless of how it
    terminates.)
</p>
<p>
    If "Success Guarantees" are present, do they always happen when the use case completes successfully? (A Success
    Guarantee represents a condition that will be true when the use case ends successfully, regardless of which path it
    takes.)
</p></td>
</tr>
</table>
</div>
<div class="stepHeading">Applicable non-functional requirements have been captured</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><p>
    Are non-functional requirements (such as performance criteria) that are&nbsp;applicable to the&nbsp;use case captured
    in the use case?
</p>
<p>
    Are these non-functional requirements applicable to many use cases?&nbsp; It they are, consider capturing them in the
    system-wide requirements specification to simplify maintenance.
</p></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
<table class="copyright" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="copyright"><p> This program and the accompanying materials are made available under the<br />
  <a href="http://www.eclipse.org/org/documents/epl-v10.php" target="_blank">Eclipse 
  Public License V1.0</a>, which accompanies this distribution. </p><p/><p> <a class="elementLink" href="./../../../core.default.release_copyright.base/guidances/supportingmaterials/openup_copyright_C3031062.html" guid="_UaGfECcTEduSX6N2jUafGA">OpenUP Copyright</a></p></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script type="text/javascript" language="JavaScript">
				contentPage.onload();
			</script>
</html>
